//
//  main.swift
//  StrategyPattern
//
//  Created by mac on 2017/11/9.
//  Copyright © 2017年 RRC. All rights reserved.
//

import Foundation

print("Hello, World!")

//赵云出场了，他根据诸葛亮给他的父代，依次拆开妙计
var context:Context
print("----------刚刚到吴国的时候拆第一个-----------")
context = Context(straegy: BackDoor())
context.operate()

print("---------刘备乐不思蜀了，拆第二个了------------")
context = Context(straegy: GivenGreenLight())
context.operate()

print("---------孙权的小兵追来了，咋办？拆第三个--------")
context = Context(straegy: BlockEnemy())
context.operate()

/**
 策略模式的定义：定义一组算法，将每个算法都封装起来，并且使它们之间可以互换。
 */


